package com.mytx.mapper;


import com.mytx.pojo.Comment;
import com.mytx.pojo.CommentExample;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface CommentMapper {
    /**
     * 添加子评论的时候，对父评论的子评论数量字段增加1，
     * 这样就要求在创建普通评论的时候，child_size必须设置为0，否则没法 通过此方法 增加child_size的值
     * @param parentCommentId
     */
    @Select(" UPDATE comment  SET child_size = @value:= child_size + 1 WHERE id = #{parentCommentId}")

    //----------------------------------------------------分割线------------------------------------------------

    void incrementChildCommentSize(String parentCommentId);

    int countByExample(CommentExample example);

    int deleteByExample(CommentExample example);

    int deleteByPrimaryKey(String id);

    int insert(Comment record);

    int insertSelective(Comment record);

    List<Comment> selectByExample(CommentExample example);

    Comment selectByPrimaryKey(String id);

    int updateByExampleSelective(@Param("record") Comment record, @Param("example") CommentExample example);

    int updateByExample(@Param("record") Comment record, @Param("example") CommentExample example);

    int updateByPrimaryKeySelective(Comment record);

    int updateByPrimaryKey(Comment record);


}